package com.jy.modules.cims.data.interact.tbj.loan.request;

import java.math.BigDecimal;

import javax.validation.constraints.NotNull;
import javax.validation.constraints.Size;

import org.hibernate.validator.constraints.NotBlank;

/**
 * @description 铜板街贷款放款结果Request。
 * @author shengzhoutao
 * @date 2015-09-07
 */
public class RequestLoanResultDTO {
	
	/**唯一标识本次放款结果**/
	@NotBlank(message = "放款结果唯一标示 streamId不能为空！")
	private java.lang.String streamId;

	/**借款信息审批编号*/
	@NotBlank(message = "借款信息审批编号 loanNumber不能为空")
	@Size( min = 1, max = 50,message = "借款信息审批编号 loanNumber长度必须在1-50之间")
	private java.lang.String loanNumber;

	/**借款人姓名*/
	//@NotBlank(message = "借款人姓名 debtorName不能为空")
	//@Size(min = 1, max = 20, message = "借款人姓名 debtorName长度必须在1-20之间")
	private java.lang.String debtorName;

	/**借款放款金额,单位元，精确到分*/
	//@NotNull(message = "借款放款金额 loanAmount不能为空")
	private BigDecimal loanAmount;
	
	/**放款结果, 成功-3 失败-1打款中0*/
	// @Pattern(regexp="/^[-3]\\d|[-1]\\d|[0]\\d*$/",message =
	// "放款结果只能是 -3成功、-1失败 、0成功！")
	@NotNull(message = "放款结果 loanResult不能为空")
	private Integer loanResult;

	/**借款放款日期，格式yyyy-MM-dd HH:mm:ss*/
	//@NotNull(message = "借款放款日期 loanTime不能为空！")
	private java.util.Date loanTime;

	/**借款放款卡号*/
	//@Pattern(regexp="/^(\\d{16}|\\d{19})$/",message = "放款卡号格式不正确！")
	//@NotBlank(message = "借款放款卡号 bankCardNumber不能为空")
	private java.lang.String bankCardNumber;

	public java.lang.String getStreamId() {
		return streamId;
	}

	public void setStreamId(java.lang.String streamId) {
		this.streamId = streamId;
	}

	public java.lang.String getLoanNumber() {
		return loanNumber;
	}

	public void setLoanNumber(java.lang.String loanNumber) {
		this.loanNumber = loanNumber;
	}

	public java.lang.String getDebtorName() {
		return debtorName;
	}

	public void setDebtorName(java.lang.String debtorName) {
		this.debtorName = debtorName;
	}

	public BigDecimal getLoanAmount() {
		return loanAmount;
	}

	public void setLoanAmount(BigDecimal loanAmount) {
		this.loanAmount = loanAmount;
	}

	public Integer getLoanResult() {
		return loanResult;
	}

	public void setLoanResult(Integer loanResult) {
		this.loanResult = loanResult;
	}

	public java.util.Date getLoanTime() {
		return loanTime;
	}

	public void setLoanTime(java.util.Date loanTime) {
		this.loanTime = loanTime;
	}

	public java.lang.String getBankCardNumber() {
		return bankCardNumber;
	}

	public void setBankCardNumber(java.lang.String bankCardNumber) {
		this.bankCardNumber = bankCardNumber;
	}
}
